﻿// 抽象类:专门为了做基类而生的
// namespace cs_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             Vehicle v = new Car();
//             v.Run();
//         }
//     }
//
//     abstract class Vehicle{
//         public void Stop() {
//             Console.WriteLine("Stopped");
//         }
//
//         abstract public void Run();
//     }
//
//     class Car:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Car is running");
//         }
//
//         public void Stop() {
//             Console.WriteLine("Stopped");
//         }
//     }
//
//     class Trunk:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Trunk is running");
//         }
//
//         public void Stop() {
//             Console.WriteLine("Stopped");
//         }
//     }
// } 


// namespace cs_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             Vehicle v = new Car();
//             v.Run();
//             v = new Trunk();
//             v.Run();
//             
//         }
//     }
//     abstract class VehicleBase{
//         abstract public void Run();
//         abstract public void Stop();
//     }
//
//     abstract class  Vehicle:VehicleBase{
//         public override void Stop() {
//             Console.WriteLine("Stopping!!");
//         }
//
//         // public abstract void Run();
//         // public virtual void Run() {
//         //     
//         // }
//     }
//     
//     class Car:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Car is running!!");
//         }
//     }
//
//     class Trunk:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Trunk is running!!");
//         }
//     }
// }







// namespace cs_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             Vehicle v = new Car();
//             v.Run();
//             v = new Trunk();
//             v.Run();
//             
//         }
//     }
//     interface VehicleBase{
//         abstract public void Run();
//         abstract public void Stop();
//     }
//
//     abstract class  Vehicle:VehicleBase{
//         public void Stop() {
//             Console.WriteLine("Stopping!!");
//         }
//         
//         abstract public void Run();
//
//         // public abstract void Run();
//         // public virtual void Run() {
//         //     
//         // }
//     }
//     
//     class Car:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Car is running!!");
//         }
//     }
//
//     class Trunk:Vehicle{
//         public override void Run() {
//             Console.WriteLine("Trunk is running!!");
//         }
//     }
// }


// 泛型:泛型类、泛型接口、泛型方法、泛型委托、泛型字段
// namespace cs_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             Apple apple = new Apple(){Color = "red"};
//             Book book = new Book(){Name = "Little King"};
//             Box<Apple>  box1 = new Box<Apple>(){Cargo = apple};
//             Box<Book>  box2 = new Box<Book>(){Cargo = book};
//             Console.WriteLine(box1.Cargo.Color);
//             Console.WriteLine(box2.Cargo.Name);
//         }
//     }
//
//     class Apple{
//         public string Color { get; set; }
//     }
//
//     class Book{
//         public string Name { get; set; }
//     }
//
//     // class AppleBox{
//     //     public Apple Cargo { get; set; }
//     // }
//     class Box<TCargo>{
//         public TCargo Cargo { get; set; }
//     }
//     
// }




// namespace sc_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             Student<int> stu =  new Student<int>(){ID = 10,Name = "Jackson"};
//             Console.WriteLine(stu.Name);
//             Console.WriteLine(stu.ID);
//         }
//     }
//
//     interface IUnique<TId>{
//         TId ID  { get; set; }
//     }
//
//     class Student<TId> : IUnique<TId>{
//         public TId ID  { get; set; }
//         public string Name  { get; set; }
//     }
// }

using System;
using System.Collections.Generic;

// namespace cs_basic_21{
//     class Program{
//         static void Main(string[] args) {
//             IList<int> list = new List<int>();
//             for (int i = 0; i < 100; i++) {
//                 list.Add(i);
//             }
//
//             foreach (var item in list) {
//                 Console.WriteLine(item);
//             }
//         }
//     }
// }

namespace cs_basic_21{
    class Program{
        static void Main(string[] args) {
            IDictionary<int, string> dict = new Dictionary<int, string> { };
            
        }
    }
}
